package com.vdong.trade.order.entity.dto.result;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 分销商品基础信息
 */
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Data
public class BasePeddleGoodsDTO {

    /**
     * 分销商品id
     */
    @ApiModelProperty(notes = "分销商品id")
    private Long peddleGoodsId;

    /**
     * 商品id
     */
    @ApiModelProperty(notes = "商品id")
    private Long goodsId;

    /**
     * 商品一级分类
     */
    @ApiModelProperty(notes = "商品一级分类")
    private Long categoryId;

    /**
     * 商品二级分类
     */
    @ApiModelProperty(notes = "商品二级分类")
    private Long typeId;

    /**
     * 商品一级分类
     */
    @ApiModelProperty(notes = "商品一级分类")
    private String categoryName;

    /**
     * 商品二级分类
     */
    @ApiModelProperty(notes = "商品二级分类")
    private String typeName;

    /**
     * 分类类型【0：课程】
     */
    @ApiModelProperty(notes = "分类类型【0：课程】")
    private Integer classifyType;

    /**
     * 商品封面
     */
    @ApiModelProperty(notes = "商品封面")
    private String imageUrl;

    /**
     * 商品名称
     */
    @ApiModelProperty(notes = "商品名称")
    private String goodsName;

    /**
     * 价格
     */
    @ApiModelProperty(notes = "价格")
    private BigDecimal price;

    /**
     * 商品简介
     */
    @ApiModelProperty(notes = "商品简介")
    private String goodsIntroduction;

    /**
     * 平台收益比例
     */
    @ApiModelProperty(notes = "平台收益比例")
    private Integer platformProfitRatio;

    /**
     * 推客收益比例
     */
    @ApiModelProperty(notes = "推客收益比例")
    private Integer promoterProfitRatio;

    /**
     * 推文链接
     */
    @ApiModelProperty(notes = "推文链接")
    private String articleLink;

    /**
     * 审核状态【0：待审核   1：通过   2：未通过】
     */
    @ApiModelProperty(notes = "审核状态【0：待审核   1：通过   2：未通过】")
    private Integer checkState;

    /**
     * 审核时间
     */
    @ApiModelProperty(notes = "审核时间")
    private Date checkDate;

    /**
     * 审核备注
     */
    @ApiModelProperty(notes = "审核备注")
    private String auditNote;

    /**
     * 开放状态【1：上架   0：下架】
     */
    @ApiModelProperty(notes = "开放状态【1：上架   0：下架】")
    private Integer openState;

    /**
     * 上架时间
     */
    @ApiModelProperty(notes = "上架时间")
    private Date openDate;

    /**
     * 违规说明
     */
    @ApiModelProperty(notes = "违规说明")
    private String illegalNote;

    /**
     * 处理时间
     */
    @ApiModelProperty(notes = "处理时间")
    private Date handleDate;

    /**
     * 平台商品id
     */
    @ApiModelProperty(notes = "平台商品id")
    private Long platformGoodsId;

    /**
     * 是否首页展示，0：否；1：是
     */
    @ApiModelProperty("是否首页展示，0：否；1：是")
    private Boolean isShow;

    /**
     * 提交审核时间
     */
    @ApiModelProperty(notes = "提交审核时间")
    private Date submitDate;

    /**
     * 作者id
     */
    @ApiModelProperty(notes = "作者id")
    private Long authorId;

    /**
     * 作者名称
     */
    @ApiModelProperty(notes = "作者名称")
    private String authorName;

    private Boolean deleted;


    private Long sysUserId;

    private String sysUserName;

    private Integer subType;
}
